package com.admin.system.dao;

import com.admin.base.Page;
import com.admin.base.Paging;
import com.admin.system.entity.SystemGroup;
import com.admin.system.vo.query.SystemGroupQuery;
import java.util.List;
import org.springframework.stereotype.Repository;

/**
 * 组织机构操作相关
* @author : alex
* @date : 2020/5/23
*/
@Repository
public interface SystemGroupMapper {
	/**
	 * 主键删除
	 * @param id
	 * @return
	 */
	int deleteByPrimaryKey(Integer id);

	/**
	 * 插入对象
	 * @param record
	 * @return
	 */
	int insert(SystemGroup record);

	/**
	 * 插入对象，排除空字段
	 * @param record
	 * @return
	 */
	int insertSelective(SystemGroup record);

	/**
	 * 主键查询
	 * @param id
	 * @return
	 */
	SystemGroup selectByPrimaryKey(Integer id);

	/**
	 * 更新非空字段
	 * @param record
	 * @return
	 */
	int updateByPrimaryKeySelective(SystemGroup record);

	/**
	 * 更新所有字段
	 * @param record
	 * @return
	 */
	int updateByPrimaryKey(SystemGroup record);

    /**
     * 条件查询
      * @param query
     * @return
     */
	List<SystemGroup> listByConditions(SystemGroupQuery query);

    /**
     * 查询总数
     * @param query
     * @return
     */
	Long pageCount(SystemGroupQuery query);

    /**
     * 分页查询
      * @param query
     * @return
     */
	@Paging
    Page<SystemGroup> pagingByConditions(SystemGroupQuery query);

    /**
     * getMaxSort
     * @param pid
     * @return
     */
	Integer getMaxSort(Integer pid);
}
